package br.gov.mi.corporativo.dominio.boundary.comum.municipiopopulacao;


import java.util.List;

import javax.jws.WebMethod;
import javax.jws.WebParam;
import javax.jws.WebResult;
import javax.jws.WebService;

import br.gov.mi.corporativo.dominio.entidade.comum.MunicipioPopulacao;

@WebService
public interface MunicipioPopulacaoEndPoint {
	
	@WebMethod(operationName = "recuperarTodosMunicipiosPopulacao")
	public @WebResult(name="listaMunicipioPopulacao")List<MunicipioPopulacao> recuperarTodos();

	@WebMethod(operationName = "recuperarMunicipioPopulacaoPorIdMunicipioPopulacao")
	public @WebResult(name="municipioPopulacao")MunicipioPopulacao recuperarPorIdMunicipioPopulacao(
		   @WebParam(name="idMunicipioPopulacao") Long idMunicipioPopulacao); 
	
	@WebMethod(operationName = "recuperarMunicipioPopulacaoPorMunicipio")
	public @WebResult(name="municipioPopulacao")MunicipioPopulacao recuperarPorMunicipio(
		   @WebParam(name="municipio") Long municipio); 
	
	@WebMethod(operationName = "recuperarMunicipioPopulacaoPorNrAno")
	public @WebResult(name="listaMunicipioPopulacao")List<MunicipioPopulacao> recuperarPorNrAno(
		   @WebParam(name="nrAno") Long nrAno ); 
	
	@WebMethod(operationName = "recuperarMunicipioPopulacaoPorQtPopulacao")
	public @WebResult(name="listaMunicipioPopulacao")List<MunicipioPopulacao> recuperarPorQtPopulacao(
		   @WebParam(name="qtPopulacao") Long qtPopulacao);
	
	@WebMethod(operationName = "recuperarMunicipioPopulacaoPorQtPopulacaoOcupada")
	public @WebResult(name="listaMunicipioPopulacao")List<MunicipioPopulacao> recuperarPorQtPopulacaoOcupada(
		   @WebParam(name="qtPopulacaoOcupada") Long qtPopulacaoOcupada);
	
	@WebMethod(operationName = "recuperarMunicipioPopulacaoPorQtPopulacaoAssalariada")
	public @WebResult(name="listaMunicipioPopulacao")List<MunicipioPopulacao> recuperarPorQtPopulacaoAssalariada(
		   @WebParam(name="qtPopulacaoAssalariada") Long qtPopulacaoAssalariada);
		   
    @WebMethod(operationName = "recuperarMunicipioPopulacaoPorQtUinidades")
	public @WebResult(name="listaMunicipioPopulacao")List<MunicipioPopulacao> recuperarPorQtUinidades(
		   @WebParam(name="qtUnidades") Long qtUinidades);
		   
    @WebMethod(operationName = "recuperarMunicipioPopulacaoPorVlSalarioRemuneracao")
	public @WebResult(name="listaMunicipioPopulacao")List<MunicipioPopulacao> recuperarPorVlSalarioRemuneracao(
		   @WebParam(name="vlSalarioRemuneracao") Long vlSalarioRemuneracao);
		   
}
